﻿using MediatR;
using PLC.Domain.Models;
using PLC.Domain.Service.IRepository;

namespace PLC.Domain.Events.Handlers;

public class SaveAirtightDataHandler:INotificationHandler<SaveAirtightDataModel>
{
    private readonly IAirtightDataRepository _airtightDataRepository;

    public SaveAirtightDataHandler(IAirtightDataRepository airtightDataRepository)
    {
        _airtightDataRepository = airtightDataRepository?? throw new ArgumentNullException(nameof(airtightDataRepository));
    }
    public async Task Handle(SaveAirtightDataModel notification, CancellationToken cancellationToken)
    {
        if (notification.AirtightDatas.Count==0)
        {
            return;
        }

        await _airtightDataRepository.CreateAsync(notification.AirtightDatas);
    }
}